﻿<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script src="assets/javascripts/lib/jquery-1.7.2.min.js" type="text/javascript"></script>
    <script src="assets/javascripts/lib/jquery.tmpl.js" type="text/javascript"></script>
    <script src="assets/javascripts/lib/MobileInit.coffee"></script>
    <script src="assets/javascripts/lib/jquery.mobile-1.1.0.js" type="text/javascript"></script>
    <script src="assets/javascripts/lib/jquery.mobile.simpledialog2.min.js" type="text/javascript"></script>
    <script src="assets/javascripts/lib/spine.js" type="text/javascript"></script>
    <script src="assets/javascripts/lib/date.js" type="text/javascript"></script>
    <script src="assets/javascripts/lib/MobileUtils.coffee"></script>
    <script src="assets/javascripts/controllers/SignIn.coffee"></script>
    <script src="assets/javascripts/controllers/Setup.coffee"></script>
    <script src="assets/javascripts/models/Link.coffee"></script>
    <script src="assets/javascripts/models/Entry.coffee"></script>
    <script src="assets/javascripts/controllers/EntryItem.coffee"></script>
    <script src="assets/javascripts/controllers/EntryList.coffee"></script>
    <script src="assets/javascripts/controllers/Navigator.coffee"></script>
    <script src="assets/javascripts/controllers/MobileApp.coffee"></script>
    <script type="text/javascript">
        COFE.MobileApp.init();               
    </script>
    </script>
    <link href="assets/javascripts/stylesheets/jquery.mobile-1.1.0.css" rel="stylesheet"
        type="text/css" />
    <link href="assets/javascripts/stylesheets/jquery.mobile.simpledialog.min.css" rel="stylesheet"
        type="text/css" />
    <script type="text/x-jquery-tmpl" id="entryItemTemplate">
      <a href="" rel="external" class="changePath" >
      <image class="ul-li-icon" src="${icon}&size=large" />
      ${label}
      </a>
    </script>
</head>
<body>
    <div data-role="page" id="about">
        <div data-role="header" class="header" data-position="fixed">
            <a href="#setup" class="back" data-transition="slide" data-icon="arrow-l">Back</a>
            <h1 class="caption">
                COFEUI</h1>
        </div>
        <div data-role="content">
            <p>
                COFE2 is a combination of classes that allow access contents on current and foreign
                (not avail yet) computer. COFE2 provides a interface similar to System.IO, as well
                as RESTful Web interface.
            </p>
            <p>
                The major aim is to provide personal cloud storage, which provide web method for
                browsing and searching computer's files using file names and metadatas, downloading
                and updating files, as well as executing predefined actions asynchronously (e.g.
                EntryListActions.Save, EntryActions.CopyTo).</p>
            
            <div data-role="collapsible-set">
                <div data-role="collapsible">
                    <h3>
                        COFE2's assemblies</h3>
                    <ul data-role="listview">
                        <li>
                            <h4>
                                COFE.Core</h4>
                            <p>
                                Main library, Defines Entry, EntryType, Filter, Volumes, Logger, Plugin and Profile
                                support.
                            </p>
                        </li>
                        <li>
                            <h4>
                                COFE.Core.Actions</h4>
                            <p>
                                Defines Action (which is a Func), Work (which runs action(s) or other logic) and
                                Scheduler (which schedule works in a queue and run them using multiple threads)
                                support.
                            </p>
                        </li>
                        <li>
                            <h4>
                                COFE.IO</h4>
                            <p>
                                Win32 implementations of directoryLister, include FileSystemInfo, FileSystemInfoEx,
                                SevenZip and IsolatedStorage.</p>
                        </li>
                        <li>
                            <h4>
                                COFE.Helper</h4>
                            <p>
                                Provide a number of optional classes : FS, COFEUser, COFEAdmin, COFEServices, which
                                wrap multiple classes in COFE.Core in one place.</p>
                            <p>
                                e.g. FS.TryParsePath() instead of COFEShared.CurrentUserProfile.TryParsePath()
                            </p>
                        </li>
                        <li>
                            <h4>
                                COFE.Data</h4>
                            <p>
                                Provide cache support for COFE entries using database.</p>
                        </li>
                        <li>
                            <h4>
                                COFE.Web</h4>
                            <p>
                                Defines the base classes for the Web (Entry, Links, etc)
                            </p>
                        </li>
                        <li>
                            <h4>
                                COFE.Web.Services</h4>
                            <p>
                                ASP.Net application that provides REST Web services and HTML front end.
                            </p>
                        </li>
                    </ul>
                </div>
                <div data-role="collapsible">
                    <h3>
                        COFE2's interface</h3>
                    <ul data-role="listview">
                        <li>
                            <h4>
                                IFileSystemInfo interface</h4>
                            <p>
                                IFileSystemInfo is a <strong>interface</strong>, it has similar properties and methods
                                as the .Net's FileSystemInfo.
                                <br />
                                Internally, it's implemented by FileInfoExA and DirectoryInfoExA However, the initalization
                                is different, one has to use FS.TryParse&lt;IFileInfo&gt;("path") to obtain an IFileInfo.
                                <br />
                                Path, Directory and File helper classes is also available at FS.Path, FS.Directory
                                and FS.File respectively.
                            </p>
                        </li>
                        <li>
                            <h4>
                                RESTful web interface</h4>
                            <p>
                                COFEWS expose a number of functionality to the following addresses:</p>
                            <p>
                                <b>/login</b> - user must login before using the features below, please aware that
                                currently it's based on a weak text based password.
                            </p>
                            <p>
                                <b>/lookup</b> - redirect to appropriate entries using the path
                                <br />
                                e.g. /lookup?path={TEMP}&rel=list&json=true --&gt; /entries/{guid}/list?json=true
                                <br />
                                will return a list of sub-entries thats under {temp} directory, in json format.</p>
                            <p>
                                <b>/entries</b> - return info of an entries, it's metadata, contents or links.
                            </p>
                            <p>
                                <b>/entrytypes</b> - provide info regarding a type of entry (e.g. text file) and
                                most importantly, it's common icon.
                            </p>
                        </li>
                    </ul>
                </div>
            </div>
        </div>
</body>
</html>
